python IO并发

您所在的位置:网站首页 python3 seek函数 python IO并发

python IO并发

#python IO并发| 来源: 网络整理| 查看: 265

"""select tcp 服务重点代码

思路分析:1. 将关注的IO 放入到监控列表2. 当IO就绪时会通过select 返回3. 遍历返回值列表,得知哪个IO就绪进行处理"""

from socket import *from select import select

# 创建监听套接字,作为关注的IOs = socket()s.setsockopt(SOL_SOCKET, SO_REUSEADDR, 1)s.bind(('0.0.0.0', 48888))s.listen(3)

# 设置关注列表rlist = [s] # s用于等待处理连接wlist = []xlist = []

# 循环监控IOwhile True: rs, ws, xs = select(rlist, wlist, xlist)

# 遍历返回值列表,得知哪个IO就绪进行处理 for r in rs: if r is s: c, addr = r.accept() print('Connect from', addr) rlist.append(c) else: # 有客户端发消息 data = r.recv(1024).decode() if not data: rlist.remove(r) r.close() continue print(data) # r.send(b'ok') wlist.append(r)

for w in ws: w.send(b'ok') # 消息发完移除 wlist.remove(w)

for x in xs: pass



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3